函数
isprint
<cctype>
int isprint ( int c );
检查字符是否可打印(printable)
检查 c 是否是一个可打印字符。
可打印字符会占据显示的打印位置(这和在函数 iscntrl 中返回 true 的控制字符相反)。
对于标准 ASCII 字符集(在 “C” 环境中),可打印字符是 ASCII 值大于 0x1f (US),但除了 0x7f (DEL) 的字符。
isgraph 返回 true 的情况和 isprint 一样,除了空格字符 (‘ ‘) 外,空格字符 (‘ ‘) 在 isprint 中返回 true,但在 isgraph 中返回 false。
头文件 <cctype> 的参考中,有标准 ASCII 字符集的各个字符在不同 ctype 函数的返回值的详细图表。
在 C++ 中,这个函数的 locale-specific 模板版本 isprint 在头文件 <locale>中。
参数
c
被检查的字符,被转化为 int 型或 EOF。
返回值
如果 c 的确是一个数字或字母,则返回一个非0值 (也就是 true ),否则返回0 (也就是 false)。
例子
/* isprint example */
#include <stdio.h>
#include <ctype.h>
int main()
{
int i = 0;
char str[] = "first line \n second line \n";
while(isprint(str[i]))
{
putchar(str[i]);
i++;
}
return 0;
}
这段代码追个字符输出一个字符串,直到遇到一个控制字符才跳出 while 循环。在这个例子中,只有第一行被输出,因为第一行以控制字符 ‘\n’ (ASCII 值是 0x0a) 结尾,它不是一个可打印字符。
另请参阅
函数名 | 描述 |
---|---|
iscntrl | 检查字符是否是控制字符(control character) (函数) |
isspace | 检查字符是否是空格符(white-space) (函数) |
isalnum | 检查字符是否是字母或数字(alphanumeric) (函数) |
当前内容版权归 chrisniael 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 chrisniael .